System and method for performing process visualization

ABSTRACT

A method for forecasting batch end conditions through their depiction as a multi-dimensional regions of uncertainty is disclosed. A visualization of the current condition of a continuous process and visualization of the simulated effect of user control moves are generated for a user. Volume visualization tools for viewing and querying intersecting solids in 3-dimensional space are utilized to perform the process visualization. Interactive tools for slicing multi-dimensional (&gt;3) regions and drawing superimposed projections in 3-D space are provided. Additionally, graphical manipulation of the views of process conditions is accomplished by changing the hypothetical future values of contributing variables online in order to provide users the ability to simulate the effect of proposed control actions. The illustrative embodiment of the present invention may also be utilized in combination with a graphical programming environment supporting the execution and simulation of block diagrams and correspondingly generated process data. The scores representing the process condition may depend on estimated physical quantities as well as representations of process variability.

RELATED APPLICATION

This patent application is a continuation application of, and claims thebenefit of, U.S. patent application Ser. No. 10/668,466 filed on Sep.22, 2003, entitled “A System and Method for Performing ProcessVisualization”.

FIELD OF THE INVENTION

The illustrative embodiment of the present invention relates generallyto process visualization and more particularly to performing threedimensional graphical visualization of multi-dimensional batch processdata including analysis and visualization prior to process completion.

BACKGROUND

Process engineers overseeing manufacturing processes analyze collecteddata related to the manufacturing process to detect faults and monitorconditions associated with the process. The analysis may be performeddynamically in conjunction with an ongoing process, or it may performed“off line” in an effort to improve the process for the next performance.Technological advances in the form of more sophisticated statisticalanalysis programs, faster computers and advanced process databases havecontributed to increased efforts in this area by process engineers.

There has also been considerable and growing interest among researchersand practitioners in the application of process monitoring to batchprocesses. Batch processes typically display a non-steady state duringprocessing. Economically the growth in interest in process monitoringthis has been driven by the value of early detection and diagnosis ofbatch process disturbances (since many batch processes often involvehigh value products which in many cases have to be discarded if thebatch does not follow an ‘in control’ trajectory). One source of thegrowing interest has been the lack of on-line critical product qualitymeasurements for many batch processes. The inability to produce productquality on line measurements has sharpened the need for technology whichcan use existing indirect measurements of product quality to providewarning of deviant process conditions during the execution of the batch,while there is still time to take a mid-course correction.

The most widespread and established application of process visualizationtechnology has been in its most basic form, where process operators viewelectronic versions of Statistical Process Control (or SPC) charts for aselection of measured process variables. Anomalous or upset processconditions are detected by recognizing when the time series shown onthose charts deviate from some defined control region. The simplicity ofthe SPC approach has contributed to its popularity, but there are twomajor practical drawbacks that have limited its effectiveness:

In most manufacturing processes the measured variables are related toeach other through physical interaction, so that there is notnecessarily a direct relationship between a particular variable exitingits control limits and the root cause of a process upset. Additionally,most manufacturing operations have hundreds or more measured variables,making it impossible for a human operator to monitor each and everymeasurement using a separate SPC chart.

These limitations regarding SPC charts have prompted the development ofother approaches to process condition monitoring based on PrincipleComponent Analysis (PCA) and Partial Least Squares (PLS) as well asother multivariate statistical methods. These alternative techniquesessentially detect the existence of a process upset by monitoringcertain common factors (subsequently referred to herein as ‘scores’),chosen to represent significant components of the overall processvariability. An upset condition is flagged when the vector of scoresexits some defined control region subsequently labeled the ‘in-control’and ‘control’ region. There are established mathematical methods fordetecting the incidence of this type of ‘out of control’ event, butvisualization of the behavior of the scores relative to the ‘in control’region can offer physical insight into the process behavior and thecause of an upset, especially in cases where the scores are imbued withsome physical meaning. Conventionally, two approaches are used toperform visualization of the behavior of scores relative to controlregions whenever 3 or more scores are involved:

Each scalar score component is viewed separately from the other scoresbut relative to the limits of the ‘in control’ region as they apply thatcomponent. The resulting monitoring display consists of n SPC stripcharts (where n is the number of score components). Conceptually this isthe equivalent of plotting a one dimensional cross-section of ann-dimensional score space viewed relative to upper and lower boundsdefined by a one dimensional cross-section of the n-dimensional solidthat defines the ‘in control’ region. In cases where the processcondition is represented by 3 scores, a graphical projection method isoften used to provide a 2 dimensional depiction of the scores and the 3dimensional solid representing the control region (usually anellipsoid). Those skilled in the art will recognize that 2 or fewerscores can be monitored with a two dimensional planar plot of the scoretrajectories and ‘in-control’ region without requiring any of thevisualization features described in this disclosure.

One drawback of the first approach (where each coordinate is viewedseparately) is that it ignores the real dependence of the ‘in-control’boundaries on a combination of the coordinates, making it difficult toassess the in-control state of the process without considering all thescore values simultaneously. A consequence of ignoring the effect ofcombining coordinates is that separate strip plots of each score candisguise the severity of an impending process upset. FIG. 1A shows agraphical projection 1 of a sequence of three scores representing thestate of a monitored process where the coordinates have already beencombined. The evolution of the score trajectory is represented by a line2 and the coordinates of the most recent 3 scores are indicated by a dot4 (it should be understood throughout the discussion herein that many ofthe described visualization techniques are performed using colors on anelectronic display to increase visual contrast). The translucentsemi-ellipsoid represents the bottom half of the ‘in control’ regionenclosing score values defined by normal operation. It is apparent fromthe graphical projection 1 that the trend is towards an imminent exit ofthe score plot control region, and impending detection of a processupset. However, the corresponding strip chart plots 8, 10 and 12 of theindividual scores and their individual control regions are shown in FIG.1B (each individual control region is defined by the values of thatcoordinate within the ellipsoidal control region shown in FIG. 1 b.) Theindividual strip charts 8, 10 and 12 give no indication of the impendingupset since each score trajectory is well within the interior of each‘in control’ band.

It should be noted that the concept of scores as defined in PCA/PLSprocess monitoring (as the coefficients describing the state of theprocess in the subspace of principle components) can be extended to anyapplication where the process condition is summarized by a numericalvector. Other examples, which are based on physical rather thanstatistical process models, might include applications where the processcondition is represented by estimates of physical quantities such asstored heat, new inflow, heat flux, etc.

In cases where the scores may be associated with physical quantitiesrelating to process operation, the relative position of the scoretrajectory and the ‘in-control’ region provides an indication of whatcorrective action is needed to bring the process back into control.While strip chart plots such as those shown in FIG. 1B indicate therelative adjustments of each score required to move the process backinto the ‘in-control’ region, the geometrical intuition provided bygraphical projections usually provides faster human perception of therelative adjustments of the three score values. The graphical projectionapproach has therefore increasingly been used to try to give a moregeometrical view of the scores and the ‘in control’ region. In generalhowever even this is not sufficient to completely convey either theprocess state or its trend.

Although more informative than the strip charts, a static graphicalprojection suffers from a number of drawbacks. Conventional graphicalprojections cannot unambiguously convey the position of the scores in a3-dimensional space since the computer screen is essentially a2-dimensional depiction and each point on a graphical projection definesa line in 3 dimensions. The user must also be able to move the viewpointof the display in order to create a sequence of graphical projections soas to clarify the ambiguity of multiple positions in 3 dimensional spacecorresponding to a single point depiction on a 2 dimensional graphicalprojection. The ability to shift viewpoint in order to view processeddata is missing in conventional methods. Additionally, therepresentation of the control region fails to allow viewing of both theinterior and exterior of the ‘in control’ region in order to displaywhether and where score trajectories enter or exit. Another significantshortcoming of conventional process visualization methods is that thereare generally more than three scores, in which case a 3 dimensionalgraphical projection will not be capable of representing the 4 or morescore coordinates. Conventional process visualization techniques lackthe ability to combine graphical methods with exploration methods inorder to allow the user to vary the geometry of the projection and sogain insight into the relationship between the scores and the ‘incontrol’ region.

An additional problem with conventional graphical visualization methodsarises when there is a need to visualize regions of scores representedas 3 dimensional or higher bodies (or geometrical shapes) as opposed tothe type of score trajectories shown in FIG. 1A and FIG. 1B. The need tovisualize three dimensional or higher bodies with a three dimensionalcontrol region arises in batch multi-way process monitoring where thescores are not known precisely during the batch and consequently scorevectors are characterized as regions of uncertainty rather than singlepoints. Also, ‘what if’ or scenario analysis analyses where measuredvariables are allowed to take values over some set of possibilities, andthe potential interaction of the score loci with the ‘in control’boundary must be viewed to asses the affect of each of the possibilitiesalso requires the need to visualize the interaction of three dimensionalor larger solids in space. In these situations inference depends onassessing the overlap of 3 dimensional or larger solids in space.Without the ability to vary the viewpoint parallax makes the process ofdetermining the relative positions of the solids difficult and onedimensional cross sections often yield misleading results.

Unlike continuous processes, batch processes are usually designed tohave varying conditions over the course of their run, and consequentlyany assessment of the batch condition must take into account the entirecourse history rather than just the current conditions. The standardapproach to batch process monitoring is to use extensions ofmultivariate statistical methods for continuous processes (known asmulti-way PCA and multi-way PLS) adapted to handle non-steady stateconditions. Multi-way methods work by considering each new observationof each measured variable during the batch as a distinct variable, andthe entire batch as a single observation of that collection ofvariables. Thus, the history of all the measured variables during thebatch is reduced to a single vector representing one extendedobservation, and the overall batch state of the batch by the vector ofscores calculated for that observation. Viewing observations of the samemeasurement at different times as distinct variables allows multi-waymethods to treat different times differently, in effect recognizing thatdifferent periods of the batch trajectory are more or less impact onfinal product quality. However, computation of the score vector requiresthe complete batch history, which presents a challenge for in-courseassessment of the state of the batch, because the observation setrequired for estimation of scores is not complete while the batch isrunning. Consequently, forecasts of future measurements are employed(extending from the current time until the end of the batch) to completethe multi-way observation vector and calculate estimates of the likelyend of batch score vector. Since the future measurement trajectories areuncertain, the calculated end point scores are no longer defined by avector but rather by a probability distribution.

When these probability distributions are viewed geometrically theydefine a region of probable values in score space rather than a singlepoint. Assessment of whether the final score vector will likely end upin the control region then amounts to judging whether there issignificant overlap between the region of end point uncertainty and theregion defining the score values of ‘in-control’ batches. Whileprobability distributions of score vectors for in-process batches havebeen derived by various methods in the research literature, there hasbeen no development of techniques for their visualization other than forone score component at a time. Thus the potential for misleading andconfusing results stemming from one-dimensional visualization that wasdiscussed above is further heightened for the case of batch processmonitoring attempting the more complex task of assessing the relativeposition of two regions (score uncertainty region which is evolving intime as more of the measurement trajectories become available and the‘in-control’ region).

SUMMARY OF THE INVENTION

The illustrative embodiment of the present invention provides a methodfor forecasting batch end conditions through their depiction as amulti-dimensional regions of uncertainty. A visualization of the currentcondition of a continuous process and visualization of the simulatedeffect of user control moves are generated for a user. Volumevisualization tools for viewing and querying intersecting solids in3-dimensional space are utilized to perform the process visualization.Interactive tools for slicing multi-dimensional (>3) regions and drawingsuperimposed projections in 3-D space are provided. Additionally,graphical manipulation of the views of process conditions isaccomplished by changing the hypothetical future values of contributingvariables online in order to provide users the ability to simulate theeffect of proposed control actions. The illustrative embodiment of thepresent invention may also be utilized in combination with a graphicalprogramming environment supporting the execution and simulation of blockdiagrams and correspondingly generated process data. The scoresrepresenting the process condition may depend on estimated physicalquantities as well as representations of process variability.

In one embodiment, in a computing environment with a display for viewingby a user, a method collects batch process data from an ongoing process.The batch process data comprises measurements of the ongoing process.Analysis is performed on the collection of data while the process isongoing. An indicator of process condition is determined based on theanalysis. The indicator of process condition is based in part onpredicted future data from the ongoing process and estimates ofuncertainty of those forecasts, The indicator of process condition andthe control region are displayed in a graphical projection depicting athree dimensional view to the user monitoring the process.

In another embodiment, in a computing environment having a userinterfaced with a display monitoring the process, a method providesbatch process data that is measurements of the process. Analysis isperformed on the collection of data. An indicator of process conditionis determined based on the analysis. The indicator of process conditionis a region containing likely batch end point score locations for themeasured data in the process. The indicator of process condition and acontrol region of acceptable variability are displayed in graphicalprojection depicting a three dimensional view to the user monitoring theprocess. The user is able to manipulate a plurality of three dimensionalparameters associated with the display via a control. In an embodiment,in a computing environment having a display for viewing by a user, amethod collects batch process data from an ongoing process. The batchprocess data includes n dimensions of scores, the scores being commonfactors chosen by a user to monitor significant components of overallprocess condition. An indicator of process condition is determined basedon analysis of the n dimensions of scores. The indicator of processcondition is based in part on predicted future data from the ongoingprocess. Three dimensions of scores are selected from the n dimensionsof scores. The indicator of process condition is displayed as a regionfor the selected three dimensions of scores based on a value in the n−3non-chosen dimensions of scores. A visual indicator representing an endpoint for the n−3 dimensions of data within the control region isdisplayed in a two dimensional view. The visual indicator iscross-referenced to the three dimensional display and the indicator ofprocess condition. The method then adjusts the display of the visualindicator of process condition in response to user movements of the twodimensional visual indicator.

In a different embodiment, in a computing environment a system includesa collection of process data from an ongoing process. The system alsoincludes means for analyzing the collected data. The analysis determinesan indicator of process condition based in part on predicted future datafrom the ongoing process. The system also includes a display displayingthe indicator of process condition and a control region of acceptablevariability in three dimensions to a user monitoring said process.

In an embodiment, in a computing environment with a display for viewingby a user, a method collects process data from a continuous process.Analysis is performed on the collection of data. An indicator of processcondition is determined based on the state of the continuous process.The indicator of process condition and a control region are displayed ina graphical projection depicting a three dimensional view to the usermonitoring the process.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1A(prior art) depicts a prior art graphical projection method;

FIG. 1B(prior art) depicts a prior art Statistical Process ControlCharts;

FIG. 2 is a block diagram of an environment suitable for practicing theillustrative embodiment of the present invention;

FIG. 3 depicts a five component model selected from the first 20components;

FIG. 4 depicts the mapping process for completed batches;

FIG. 5 is a flowchart of the sequence of steps followed by theillustrative embodiment of the present invention to display processcondition for completed batch processes;

FIG. 6 depicts the display differences between forecasts for normal andfaulty test batches;

FIG. 7A depicts an uncertain forecast made by the illustrativeembodiment of the present invention;

FIG. 7B depicts an satisfactory forecast made by the illustrativeembodiment of the present invention;

FIG. 7C depicts an fault forecast made by the illustrative embodiment ofthe present invention;

FIG. 8 is a flowchart of the sequence of steps followed by theillustrative embodiment of the present invention to display processcondition for ongoing batch processes;

FIG. 9 depicts visual controls provided by the illustrative embodimentof the present invention;

FIG. 10 depicts a data panner utilized by the illustrative embodiment ofthe present invention;

FIG. 11 depicts the interrelationship between the data panner of thepresent invention and the three dimensional view of the process data;

FIG. 12 is a flowchart of the sequence of steps followed by theillustrative embodiment of the present invention to visualize more thanthree dimensions of scores;

FIG. 13 depicts a current forecast for a batch end point predicted bythe illustrative embodiment of the present invention;

FIG. 14 depicts display controls used to manipulate a forecast endpoint; and

FIG. 15 depicts the unfolding of measurements into a single data vector.

DETAILED DESCRIPTION

The illustrative embodiment of the present invention enables interactivevisualization of ongoing batch processes. Multiple dimensions ofcollected process data may be visualized in a three dimensionalenvironment to determine whether a continuation of the ongoing processis likely to continue until the end within acceptable operationalparameters. The process visualization methods of the present inventionscale to handle more than three dimensions of data. Process engineersmonitoring a process are able to alter variables in the displayedvisualization in an attempt to determine acceptable changes to theongoing process.

FIG. 2 depicts an environment suitable for practicing the illustrativeembodiment of the present invention. A computing environment 13 such asa MATLAB™ and/or SIMULINK™ (from The MathWorks, Inc. of Natick, Mass.)based environment includes or has access to a statistical analysispackage 14. The computing environment is also interfaced with a sourceof collected process data 15. The statistical analysis package 15 isused to analyze the collected process data by PCA, PLS or similarmethods. The source of collected process data 15 is collecting, or hascollected, data from a process 19 that may be ongoing and may be acontinuous process. The process may be a manufacturing process such asthe production of petrochemicals or semiconductors, or it may be anotherprocess that generates data such as the execution or simulation of ablock diagram. A user 16, who may be a process engineer, may monitor theprocess 19 while the process is ongoing. The user 16 is also interfacedwith a display 17 which is connected to the computing environment 13. Avisualization package 18 in the computing environment is used to displayanalyzed process data in three dimensional and two dimensional views onthe display 17 for the user's review.

For the purpose of explaining the establishment of the control regionused by the illustrative embodiment of the present invention, referencewill be made herein to a sample batch monitoring of a semiconductormetal etching process. Data supporting the examples is available fromEigenvector Research via its web site. This publicly available data set,from Eigenvector Research, consists of the measurements of engineeringvariables from a LAM 9600 Metal Etcher over the course of etching 129wafers. The data consists of 108 normal wafers taken during 3experiments and 21 wafers with intentionally induced faults taken duringthe same experiments. For each wafer, about 100 measurements were takenfor 21 variables during the process run.

Multi-way PCA procedures may be used to represent the state of eachbatch as a PCA score vector. Datasets from normal (calibration) batchruns are used in order to extract the lowest possible order principalcomponent space that explains most of the process variability for anormal operation. The principal component model that explains most ofthe process variability is then used to define a nominal region ofacceptable variability in the principal component space for thecalibration batches. The test dataset is mapped to the reduced orderprincipal component space in order to represent the entire history ofthe dataset as a single point in the score space.

As an example, for derivation of a PCA model, 107 normal batches wererun. Twelve out of twenty-one variables were chosen for analysis. Themeasurements of these variables were interpolated to produce a uniformsampling interval and the entire measurement set of a batch was unfoldedinto a single data vector. The result was 107 vectors of nominal data(one for each batch), each containing about 1100 samples. Using PCAmodeling technique, a five component model for the calibration data wasextracted. As shown in FIG. 3 which shows the total variability for thefirst twenty components, the five component model 22 explains most ofthe process variability (for normal runs) and a three component modelcould also have been chosen.

Using the five component model 16, it is possible to map the data vectorof each normal (calibration) batch into the (5 dimensional) score spaceas a single point. The ellipsoid defined by the 95% variance of thesepoints from the 107 normal batches is taken as the region of nominal(acceptable) variance. This region will be referred to as in-controlregion.

Once the in-control region has been defined, the unfolded data vectorsfor the test batches may be mapped onto the score space as single pointsand their location evaluated relative to the in-control region. FIG. 4depicts the mapping process for completed batches. A control region 24includes a mapped point 26 for a test batch inside the in-control region(dot in the figure). The location indicates with 95% confidence that thetest batch was probably normal (good). The test point 28 that liesoutside the in-control region 24 indicates that there is a stronglikelihood that this particular test batch ran differently from a normalbatch (dot outside control region). This may be an indication of a faultor failure to a process operator.

FIG. 5 depicts a flowchart of the sequence of steps followed by theillustrative embodiment of the present invention to display processcondition for completed batch processes. The sequence begins byproviding a collection of batch process data (step 30). An indicator ofprocess condition is then determined quantifying the end point of thedataset as a vector of scores(step 32). A control region enclosing theacceptable variability in in-control batch scores is displayed (thecontrol region having been determined in the manner discussed herein) ina three dimensional view (step 34). The indicator of process conditionis then displayed on the same display as the control region (step 36).The user may then manipulate the display (as discussed herein) in orderto determine the location of the indicator of process condition inreference to the three dimensional solid representing the displayedcontrol region (step 38).

The above example provides a useful means of analyzing quality of batchprocesses whose recorded measurements are stored in large (historical)datasets. In this manner, a completed batch can be evaluated againstvarious quality and performance yardsticks. The illustrated embodimentof the present invention may also be utilized to visualize data fromas-yet non-completed (or running) batch process by predicting the endconditions of the data in advance while a batch is still running.

Multi-way PCA/PLS treats each process measurement at each time as adistinct variable, and accordingly, the values of variables defined bymeasurements extending from the current time until batch completion areunknown. Therefore, the illustrative embodiment of the present inventionformulates an approach where a priori distribution for the variabilityof the unmeasured variables is assumed, and the running batch's scorespace end-condition is forecasted based on a partially complete recordof measurements extending from the beginning of the batch to the currenttime. The geometry of the region representing this distribution may bedefined in terms of the covariance of the observed and as yet unobservedmeasurements and the weightings that define each score in terms of eachof the measurements (PCA loadings) as expressed in equation (1), whichis discussed below. The PCA loadings are computed using historical datafrom the set of calibration batches. If the process measurements areassumed to have a Gaussian probability distribution, then this regionwill be ellipsoidal. Suppose v is a vector of random variablesrepresenting each of the process measurement at each time during thebatch, organized in chronological order. Suppose further that thecurrent batch is only ⅓^(rd) complete and the intention is tocharacterize the distribution of score end points based on the partialmeasurement trajectories available up to the current time. It ispossible to split the sequence of variables into those which have beenobserved and those yet to be observed,

${v = \begin{bmatrix}v_{measured} \\v_{unknown}\end{bmatrix}},$where v_(unknown) represents the unobserved (latter ⅔^(rd)) component ofthe data vector. If Σ represents the overall covariance of v evaluatedfrom the calibration data, and W is the matrix of loadings for eachscore, then the variable defining the score vector S for the runningbatch can be expressed as:

${S = {{Wv} = {\begin{bmatrix}W_{1} & W_{2}\end{bmatrix}\begin{bmatrix}v_{measured} \\v_{unknown}\end{bmatrix}}}},$where W₁ and W₂ are components of W decomposed based on the lengths ofv_(measured) and v_(unknown). S is thus a vector with unknown components(W₂ v_(unknown) being the unknown part). If we assume a Gaussiandistribution for the variance of v_(unknown), then the mean andcovariance of S can be expressed as:

$\begin{matrix}{{{\mu(S)} = {( {W_{1} + {W_{2}\Sigma_{21}\Sigma_{11}^{- 1}}} )\; v_{measured}}},{{{cov}(S)} = {{W_{2}( {\Sigma_{22} - {\Sigma_{21}\Sigma_{11}^{- 1}\Sigma_{12}}} )}\;{W_{2}^{T}.}}}} & (1)\end{matrix}$Here, μ(.) represents the conditional mean and cov(.) represents theconditional covariance of the current batch's score vector based on themeasurements to date. Σ₁₁, Σ₂₁ etc are sub-matrices extracted from Σ,depending upon the relative lengths of v_(measured) and v_(unknown).Geometrically, the regions representing sets of scores (that representlikely end points up to some confidence level) will be ellipsoidal ifthe distribution of process measurements is Gaussian. The center of theellipsoid is the expected value of the score vector μ(S), while the sizeis proportional to the square-root of the eigenvalues of the covariancematrix cov(S). Thus, larger the uncertainty in data (larger covariance),the larger is the size of the corresponding forecast region (ellipsoid).Depending upon the nature of a particular process, different assumptionscan be made about the variance of the unmeasured variables. This methodof representing uncertainty in forecasts of a running batch'send-conditions as multi-dimensional solids is lacking in conventionalvisualization methods for process data.

For the current example, the forecasted regions for a normal and afaulty test batch (⅓^(rd) complete) appear as shown by a first 40 andsecond 44 ellipsoids in FIG. 6. A control region 40 is also displayed.The intersection of the in-control region 40 with the forecastedend-point region provides a measure of the likelihood that the runningbatch will end up in the in-control region. In the following threecases, a definitive decision can be made about the process behavior. Ifthe predicted score region 52 is large and encloses the in-controlregion 50 as shown in FIG. 7A, a decision cannot be made because of thehigh level of uncertainty in the location of the batch scores. The plantoperator must wait until more measurements become available. If thein-control region 50 completely encloses the forecasted score region, 52as shown in FIG. 7B, then there is a strong probability that the batchwill have similar results to the calibration batches and the operatordoes nothing. However, if the two regions 50 and 52 are disjointed asshown in FIG. 7C, then the batch may be off course and may requireadjustments.

The sequence of steps followed by the illustrative embodiment of thepresent invention to display three dimensional visualizations of processdata from ongoing processes is set forth in FIG. 8. The sequence beginswith batch process data being collected from an ongoing process (step70). Statistical analysis is performed on the process data prior to theend of the process (step 72). An indicator of process condition isdetermined based in part on forecasted future process data values (step74). The indicator of process condition suggests probable end point datavalues. A determined control region and an indicator of processcondition are then displayed in a three dimensional view in for a user(step 76). The superposition of the two solids on the display indicateswhether the ongoing process needs to be altered or not.

In addition to characterizing the amount of disjointedness, volumevisualization as used in the illustrative embodiment of the presentinvention may provide an indication of the direction in score-space ofany deviation of the set of likely score end points from the controlregion. If the scores have physical meaning then this orientationinformation can provide an indication of the cause of the evolvingaberrant behavior and decision support for taking mid-course correctiveaction.

A number of visualization techniques are used to make these inferencesfrom the visualizations of score end point sets and the ‘in control’region. The color and transparency (opacity) of solids may be varied inorder to view their relative locations or embedment clearly. Theviewpoint of the displayed values may be rotated to view the surfacefrom any direction, to ascertain the extent and the direction ofintersections between the forecasted end-point region and the in-controlregion. The lighting conditions may be varied, the brightness altered,and the motion of camera light and viewpoint may be animated to assistin analysis of intersecting or superposing surfaces.

Further insight into the progress of a batch can be gained by viewingthe evolution of the forecasted end-point regions. The uncertainty inforecasting, and consequently the sizes of the forecasted regions, willreduce as the batch progresses and more measurements become available.Thus, at the end of the batch the size of the forecast region diminishesto a single point representing a unique score vector. For an abnormalbatch the forecast regions could diverge away from the in-control regionas more measurements become available. The ability to assess a potentialtrend towards a process upset by viewing the progression of the regionsof uncertainty is made possible by effective use of color, lighting andtransparency control of intersecting/superposing solids. As each newmeasurement becomes available, a new (smaller) ellipsoid is superposed,and may be distinguished from the existing ellipsoids by using a higheropacity (less transparency), and a darker color. For example, a “HSV”(hue-saturation-value) coloring scheme available in MATLAB may be chosenin which the colors vary from a light orange to a deep red. Thein-control region is shown by a wire-mesh, which enables easy view ofits intersection of forecasted end-point regions.

FIG. 9 depicts the visual controls provided by the illustrativeembodiment of the present invention. A control region 80 is bounded witha wire mesh effect. Different shaded regions 82, 84 of displayed dataintersecting the control region with the later measurements appearingsmaller and darker. Also available are user interface controls for thedisplay allowing the user to adjust the transparency of the controlregion 86 and a slider 88 to adjust the forecasted end point region.

The visualization tools of the illustrative embodiment of the presentinvention allow the visualization to be extended to more than to3-dimensional spaces. Indeed, the score spaces usually have more than 3dimensions, (although this number is usually not large in practice).Graphical methods that allow querying greater-than-three dimensionalscore spaces by interactive projections from score regions in greaterthan 3 dimensions onto 3-dimensional volumes extend the visualizationbenefits to processes described by arbitrary numbers of scores.

The illustrative embodiment of the present invention creates “datapanners” (described below) that allow the user to visualize greater thanthree dimensional solids by projecting them onto 3 dimensions andinteractively varying the geometry of the projection. The presentinvention also allows superimposing the 3 dimensional projectionsobtained to view a sequence of 3 dimensional cross-sections of thehigher dimensional forecasted end-point region. Interactive data panningalong higher dimensions may be made possible by MATLAB handle graphicstools. An example of such a data panner is shown in FIG. 10.

The data panner 100 provides a two dimensional view of the 4^(th) and5^(th) dimension of score data. Slicing projections are performed along4th and 5th dimensions to obtain the locus of projection in a 3-D plane.An icon 102 in the region of valid projections allows a user to select aprojection plane. The data panner 100 provides an interactive way ofdoing so in real-time. As the icon 102 is moved by mouse, theprojections update automatically. The data panner 100 is crossreferenced with the three dimensional display of process data values.

If there are n scores then the region describing the score end pointuncertainly will exist in an n dimensional space. The n dimensionalsolid may be visualized by fixing n−3 of the score coordinates at valuesof a point within the n dimensional solid, and then viewing the set ofall possible values of the 3 remaining coordinates for points in thesolid within a 3 dimensional graphical projection. The user canvisualize the n dimensional solid by varying the location of the n−3initial coordinates, and viewing the behavior of the 3 dimensionalgraphical projections describing admissible values of the remainingcoordinates. Selection of the initial n−3 coordinates requires the userto select them with the mouse from a graphical description of the set ofpossible values defined by points in the n dimensional solid. Thisgraphical tool is labeled a “data panner” herein.

The process visualization of the present invention follows certain rulesin visualizing process data. If the n dimensional solid is ellipsoidal,each of the views will be a representation of a 3 dimensional ellipsoid.If n is 4 dimensions, the data panner requires the selection of a singlecoordinate from an interval. If n is 5 dimensions, the data pannerrequires the selection of a pair of coordinates from a 2 dimensionalshape. This can be achieved by selecting a single point with a mouseclick. In most cases the scores selected with the data panner will bethe less significant scores, since in general this will result in lessdrastic movement of the score view as the data panner is manipulated.

In the illustrative embodiment of the present invention, a dynamic linkis created between the panner that controls the projection planes alongthe higher (>3) dimensions and the projected 3-D views. Thus, as a usermoves the mouse to choose a projection point along 4^(th) and 5^(th)dimensions, the corresponding 3-D projections of the in-control regionand forecasted end-point region update automatically. In FIG. 10, theellipse 104 (in the right-hand-side panner) marks the region defined bythe 4^(th) and 5^(th) score coordinates of points in the 5 dimensionalsolid defining the set of score end points. The user can grab the bluestar-shaped icon 102 and move it around inside the ellipse. Eachlocation of this icon defines a pair of orthogonal surfaces along whichthe section in 4^(th) and 5^(th) dimensions are taken. The presentinvention may also be extended to non-orthogonal slicing withoutdeparting from the scope of the present invention. Arbitrary surfacesencompassing one or more dimensions may be defined along which theprojection could be taken. Such slicing surfaces would be user-defined.

To gain a better understanding of the relative locations and the extentof intersection between the two regions, it is possible to superpose theprojections from different cross sections along higher dimensions. Thisis achieved by using a “data panner”, also referred to as a “projectionselector”. The primary three components are chosen for visualization offorecasted batch end points. The remaining n−3 components are used todefine an n−3 dimensional region along which valid projections can betaken. A trail of the projected 3-D regions can be visualized as afunction of the position of the blue-star icon. The resulting view isshown in FIG. 11. The data panner 100 also has three score selectors110, 112 and 114 that a user manipulates to select score (explainedbelow). The selection may be done in real time. The superposedprojections of the in-control region and the forecasted end-pointregions appear as different colored clouds 116 and 118. The loci-cloudsrepresent intersecting regions in 3-D space for a given choice of threeprincipal components.

The approach of analyzing projections of higher dimensional spaces iscompleted by providing the ability to choose any 3 out of n (n:dimension of score space) principal components for drawing theprojections. Since there are 10 ways of choosing unique triplets out ofa set of 5 objects, there is a choice of 10 different projection viewsin 3-D space, for a 5-dimensional PCA model. The combination ofabilities to superpose projections and choose any 3 score components forprojection subspace provides the user with a rich set of options tomonitor and query forecasted scores over the run of the process.

FIG. 12 is a flow chart of the sequence of steps followed by theillustrative embodiment of the present invention to use the data pannerto visualize more than three dimensions of scores. The sequence beginswith batch process data being collected from an ongoing process (step120). An indicator of process condition is determined based uponstatistical analysis of the process data (step 122). The user selectsthree dimensions of scores from the n dimensions of data (step 124). Acontrol region of acceptable variability and the indicator of processcondition are then displayed in three dimensions (step 126). A separateregion for the remaining n−3 components is then drawn that indicates thelocus of locations where valid projections can be taken. An icon is thendisplayed inside this projection selector region that represents thelocation of the current projection that is being displayed in the3-dimensional volume view (FIG. 11A). The three dimensional view is thenaltered in response to user manipulation of the n−3 icon (step 130).

The graphical visualization techniques of the present invention may beused for not only detecting but also modifying/correcting an aberrantprocess behavior. Visualization of the dependence of end point regionson various hypothetical future values of key variables can help anoperator decide which input changes may move the score region back intothe ‘in control’ region. Aberrant behavior may be corrected by simplyholding one of the input variables to a constant value for the remainingcourse of the process.

For example, for a running process, at a particular logging instant, afault may be detected by observing that the in-control region and theforecasted batch end-point region do not intersect. A particular processinput variable may then be held to an adjustable constant value from thecurrent time until the end of the batch in order to observe the effectof the constant value on the forecasted region; in affect modifying theforecast for hypothetical scenario. Various constant values for thechosen process variable can be tested to evaluate which scenariomaximizes the proximity between the two regions. Since multiplevariables may be under the user's control this procedure may be repeatedfor other variables.

FIG. 13 shows the current forecast 150 for a batch end point. Thedisplayed regions 152 and 154 do not intersect, which is an indicationof a fault. To correct the behavior, a user selects one variable at atime from the popup menu. The currently selected variable appears inedit box below, which is “He Press (helium pressure)” 156 in the figure.For the chosen variable, the line 158 running through the forecastedend-point region indicates the locus of the forecasted regions' locationfor various fixed values of that input (“He Press”) from the currenttime until batch completion. The value of the input variable is changedusing the slider 160, which is dynamically linked to the position of theforecasted end-point region. The chosen value is displayed in a textarea 162 located towards the right of the slider.

FIG. 14 shows controls to rotate the whole view 170 and its lighting andcolor properties can be adjusted interactively using the FIG. 172 andcamera 174 toolbars. The zooming option 166 provides additional controlover querying the locations and intersections of these surfaces. Indeed,this type of graphical exploration maneuver is essential to judgingwhether the end point region locus intersects the ‘in control’ region.FIG. 14 depicts a process being brought to normal behavior (“incontrol”), by assigning fixed values for variables—TCP Tuner 175, RFLoad 176, and TCP Load 177.

FIG. 15 describes the modification to the multi-way PCA unfoldingalgorithm to account for a variable that is assumed to be held constantuntil the end of the batch: Multi-way PCA method involves unfolding ofmeasurements of all process variables into a single data vector. Fixinga single process variable to a constant value K 190 amounts tore-organizing the data to keep the known values together with thealready-measured variables. Thus, hypothetical data (of value K) istreated as if it were known into the future. Conditional means andcovariance are calculated for the new data split, since the partitioningof matrices W into W₁, W₂, and Σ into Σ₁₁, Σ₁₂, Σ₂₁, Σ₂₂ changes.

The present invention also allows the process data to be visualized byprescribing time-dependent trajectories for several process inputstogether, rather than hold them to constant levels. This forces adifferent reshaping of the forecasted region. Similarly, limits on thevariability of certain process variables might be required. These limitswould also correspond to regions similar to the forecasted end-pointregions in the score space. The intersection of variable-constraintregion with the in-control region would help in evaluating thefeasibility of achieving desired performance under prescribedconstraints.

Batch execution of simulations is analogous to batch processing inmanufacturing, and the monitoring and visualization techniques describedabove may also be applied to monitor the behavior of sequences ofsimulations. Specifically, they can be used to monitor the progress ofindividual simulations, detect simulation runs which deviate from an‘in-control’ region defined by a normative ensemble of simulations, andprovide geometrical representations of various likely simulation endpoints under various conditions. The illustrative embodiment of thepresent invention may be implemented to perform batch simulationmonitoring within a simulation block language such as Simulinkimplemented in the form of a simulation block or other form, and alsowithin a batch simulation tool such as the Simulation and Test Workshop.Those skilled in the art will recognize that other simulationenvironments are also possible within the scope of the presentinvention.

The illustrative embodiment of the present invention may also be used toanalyze a continuous rather than a batch process. The analysisdetermines an indicator of process condition based on the current stateof the process defining a single point in n dimensional score spacerepresenting the current process condition. The user establishes rangesof possible values for certain process set points that would result fromone or more user-initiated control moves. The set of scores defined bythe current process condition, and all possible user-defined values ofthe said process set points, describe a region of scores representingprocess conditions achievable by adjusting the process set points withinthe specified ranges. A display of the region of potential processconditions and a control region of acceptable variability in threedimensions is generated for a user. The user is able to manipulatevarious features of the display in order to assess whether any of theset points in the user defined range(s) would cause the processcondition to deviate from the control region, and so simulate thepotential outcome of making those control adjustments. These graphicalmanipulations may include varying the viewpoint of the control regionand condition trajectory, adjusting the opacity of the control region,zooming in on certain subsets, rotating the entire view, changing theorigin and intensity of the simulated lighting of the view, manipulatingcontract and colors, visually ‘cutting open’ the control region in orderto visualize the relationship between the process condition, itstrajectory and the interior of the control region.

Since certain changes may be made without departing from the scope ofthe present invention, it is intended that all matter contained in theabove description or shown in the accompanying drawings be interpretedas illustrative and not in a literal sense. Practitioners of the artwill realize that the system configurations depicted and describedherein are examples of multiple possible system configurations that fallwithin the scope of the current invention. For example, the presentinvention may be practiced in other block diagram execution environmentssuch as text based simulation environments. Likewise, the sequence ofsteps utilized in the illustrative flowcharts are examples and not theexclusive sequence of steps possible within the scope of the presentinvention.

1. A computer-implemented method of visualizing a process condition, themethod comprising: collecting data from a process; determining anindicator of the process condition based in part upon the collected dataand predicted future data for the process; generating a graphicalrepresentation in three or more dimensions of the indicator of theprocess condition and a control region; and generating an interactivedata panner for the indicator of the process condition, where thegenerating further includes: projecting the indicator of the processcondition onto three dimensions and interactively varying geometry ofthe projection.